#include<iostream>
using namespace std;
int zza(int n,int b,int f){
	if(f==b+1){
		if(n[b]<=0){
			return 0;
		}
		else{
			return n[b];
		}
	}
	else{
		int mid=0;
		if(f%2==0){
			mid=f/2;
		}
		else{
			mid=(f+1)/2;
		}
	}
	int z=zza(n,b,mid);
	int y=zza(n,mid+1,f);
	int i=mid,j=mid;
	int zmax=0,ymax=0;
	while(i==b&&j==f){
		i--;
		j++;
		int x[f/2+1];
		int y[f/2+1];
		for(int i=0;i<mid;i++){
			x[i]=n[i];
		}
		for(int i=mid;i<f;i++){
			y[i]=n[i];
		}
		int xz=0;
		int yz=0;
		for(int i=0;i<mid;i++){
			xz+=x[i];
		}
		for(int i=mid;i<f;i++){
			yz+=y[i];
		}
		if(xz>zmax){
			zmax=xz;
		}
		if(yz>ymax){
			ymax=yz;
		}
	}
	int zz=ymax+xmax;
	if(zz>z){
		if(zz>y){
			return zz;
		}
		else{
			return y;
		}
	}
	else if(zz>y){
		if(zz>x){
			return zz;
		}
		else{
			return y;
		}
	}
}
int main(){
	int a;
	cin>>a;
	int n[a];
	for(int i=0;i<a;i++){
		cin>>n[i];
	}
	int w;
	
}
